Mapping database file class to operating system file class in a computer schema

ABSTRACT

Described herein is a schema extension of the Common Information Model (CIM), designed to model manageable aspects of a database server such as a Structure Query Language (SQL) server. The database schema contains a data file class that represents files associated with databases. The operating system also has a data file class, representing files that are managed by the operating system. An association is defined between the two data file classes, allowing queries to navigate between the database schema and the operating system schema.

RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application No.60/252,137, filed Nov. 17, 2000, entitled “Mapping Database File Classto Operating System File Class in a Computer Schema.”

TECHNICAL FIELD

This invention relates to databases, database management systems, anddatabase management schemas.

BACKGROUND

Database management systems (DBMS) are core components of virtuallyevery enterprise (e-business) application. The ability to effectivelyconfigure, monitor, and manage a DBMS is critical to the success ofenterprise applications.

Most DBMSs are designed for compatibility with relational databases. Arelational database comprises a plurality of tables. Each table has aplurality of data records (rows) and each table includes a definition ofthe fields (columns) that the records will contain. A relationaldatabase includes the specification of relationships between fields ofdifferent tables. A DBMS performs common management tasks such ascreating databases, adding tables, replication management, data backup,etc.

The Desktop Management Task Force (DMTF) Common Information Model (CIM)is an approach to the management of systems, software, users, andnetworks that applies the basic structuring and conceptualizationtechniques of the object-oriented paradigm. More specifically, thepurpose of CIM is to model various computer-related systems—bothhardware and software. It is important to recognize that object-orientedmodeling is different from object-oriented programming.

This type of modeling uses schemas to represent systems. A schema is anabstraction of something that exists in the real world. Generally, aschema comprises a collection of classes and associations.

A class models a set of objects that have similar properties and fulfillsimilar purposes. In a database management schema, for example,individual classes might define such things as files, users, tables,etc.

Classes follow a hierarchical structure. Classes can have subclasses,also referred to as specialization classes. The parent class of asubclass is referred to as a superclass or a generalization class. Aclass that does not have a superclass is referred to as a base class.

A typical schema might comprise a collection of different schemas, whichin this case can also be referred to as subschemas. Such subschemas areoften located in various different namespaces. A namespace is simply away to logically group related data. Within a given namespace, all namesare unique. Within the following disclosure, the terms “schema” andsubschema are used interchangeably.

A subclass inherits properties of its superclass. All properties andmethods of a superclass apply to the subclass.

It is conventional to represent a class by a rectangle containing thename of the class. FIG. 1 shows an example. A class with properties isrepresented by a rectangle divided into two regions as in FIG. 2, onecontaining the name of the class and the other a list of properties.Inheritance, or a subclass/superclass relationship, is represented by aline drawn between the subclass and the superclass, with an arrowadjacent to the superclass indicating the superclass. Lines representinginheritance are shown in FIG. 3, indicated by reference numeral 10.

Classes contain instances that are collections of values that conform tothe type established by the class. Instances are identified by keys thatare unique within the class. In other words, no two instances in thesame class in the same namespace may have the same values for all oftheir key values. The term “object” may be used to refer to either aninstance or a class.

An association represents a relationship between two or more objects.More specifically, an association is a mechanism for providing anexplicit mapping between classes. Associations can be within a namespaceor across namespaces. Associations are conventionally shown as a linebetween two classes, as indicated by reference number 12 in FIG. 3.

CIM schemas describe the gamut of managed elements: servers and desktops(operating systems, components, peripherals, and applications, alllayers of the network (from Ethernet switches to IP and HTTPconnections), and even end-users. Schema properties model the attributesthat apply to objects, such as the type of printer or storage medium,RAM and CPU capacity, storage capacity, etc.

The discussion above gives a general overview of object-orientedmodeling and CIM. Please refer to Winston Vumpus, John W. Sweitzer,Patrick Thompson, Andrea R. Westerinin, and Raymond C. Williams; CommonInformation Model, John Wiley & Sons, Inc., New York (2000) for furtherinformation regarding CIM. Also refer to Common Information Model (CIM)Specification, V2.0, Mar. 3, 1998, available from the DistributedManagement Taskforce. DMTF has a number of other resources on itsInternet web site.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1-3 illustrate CIM drawing conventions.

FIG. 4 is a block diagram showing components of a typical computer.

FIG. 5 illustrates an operating system and its computer managementcomponent, along with a schema that models the computer.

FIG. 6 shows portions of a database schema, which contains a view of CIMclasses.

DETAILED DESCRIPTION

The following description sets forth a specific embodiment of a portionof a computer system management schema. This embodiment incorporateselements recited in the appended claims. The embodiment is describedwith specificity in order to meet statutory requirements. However, thedescription itself is not intended to limit the scope of this patent.Rather, the inventors have contemplated that the claimed invention mightalso be embodied in other ways, to include different elements orcombinations of elements similar to the ones described in this document,in conjunction with other present or future technologies.

FIG. 4 illustrates an example of a suitable operating environment 18 inwhich the invention may be implemented. The operating environment 18 isa computer, which is only one example of a suitable operatingenvironment and is not intended to suggest any limitation as to thescope of use or functionality of the invention. Other well knowncomputing systems, environments, and/or configurations that may besuitable for use with the invention include, but are not limited to,personal computers, server computers, hand-held or laptop devices,multiprocessor systems, micro-processor system, programmable consumerelectronics, network PCs, minicomputers, mainframe computers,distributed computing environments that include any of the above systemsor devices, and the like.

The functionality of the computer is embodied in many cases bycomputer-executable instructions, such as program modules, that areexecuted by the computer. Generally, program modules include routines,programs, objects, components, data structures, etc. that performparticular tasks or implement particular abstract data types. Tasksmight also be performed by instructions from remote processing devicesthat are linked through a communications network. In a distributedcomputing environment, program modules may be located in both local andremote computer storage media 28.

Computer 18 typically includes a variety of computer-readable media.Computer-readable media can be any available media that can be accessedby computer 18 and includes both volatile and nonvolatile media,removable and non-removable media. By way of example, and notlimitation, computer-readable media may comprise computer storage mediaand communication media. Computer storage media includes volatile andnonvolatile, removable and non-removable media implemented in any methodor technology for storage of information such as computer-readableinstructions, data structures, program modules, or other data. Computerstorage media includes, but is not limited to, RAM, ROM, EEPROM, flashmemory or other memory technology, CD-ROM, digital versatile disks (DVD)or other optical disk storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by computer 18. Communication media typically embodiescomputer-readable instructions, data structures, program modules orother data in a modulated data signal such as a carrier wave or othertransport mechanism and includes any information delivery media. Theterm “modulated data signal” means a signal that has one or more if itscharacteristics set or changed in such a manner as to encode informationin the signal. By way of example, and not limitation, communicationmedia includes wired media such as a wired network or direct-wiredconnection and wireless media such as acoustic, RF, infrared and otherwireless media. Combinations of any of the above should also be includedwithin the scope of computer readable media.

The instructions and/or program modules reside at different times in thevarious computer-readable media available to the computer. Programs aretypically distributed on some type of removable and/or remote media, orby a server on some form of communication media. From there, they areinstalled or loaded into the secondary disk memory of a computer. Atexecution, they are loaded at least partially into the computer'sprimary electronic memory. The invention described herein includes theseand other various types of computer-readable media when such mediacontain instructions programs, and/or modules for implementing theoperations described below in conjunction with a microprocessor or otherdata processors. The invention also includes the computer itself whenprogrammed according to the operations described below.

For purposes of illustration, programs and other executable programcomponents in are illustrated in FIG. 4 as discrete blocks, although itis recognized that such programs and components reside at various timesin different storage components of the computer, and are executed by thedata processor(s) of the computer.

As shown in FIG. 4, computer 18 typically includes a processing unit 22and internal computer-storage media 24. The computer may also have othernon-removable storage 26 and removable storage 28. Device 20 may haveinput/output devices 30 and 32 such as a keyboard, mouse, stylus,display device, sound card, etc. In addition, the device might includenetwork connections 34 to other devices, computers, networks, servers,etc. using either wired or wireless media. All these components are wellknown in the art and need not be discussed at length here. Many othercomponents might also be present.

FIG. 5 is a logical representation of pertinent executable componentsand if data structures relating to an operating system's managementinfrastructure. The elements shown in FIG. 5 might be maintained in asingle computer, or might be maintained in a plurality of computers.They reside in various types of computer-readable memory. It should benoted that parts or all of the system might be implemented by somethingother than a conventional computer.

The example shown by FIG. 5 includes an operating system 35. The“Windows” brand of operating systems, available from MicrosoftCorporation of Redmond, Washington, is one example of a suitableoperating system.

The “Windows 2000” operating system includes a service known as “WindowsManagement Instrumentation” (WMI) 36. WMI is an examplary managementinfrastructure for managing the operating system, applications, andcomputer hardware. It includes Microsoft's implementation of theWeb-Based Enterprise Management (WBEM) initiative, an industry standardadministered by the Distributed Management Task Force (DMTF). WMIprovides an object-oriented way of monitoring, configuring andcontrolling systems, services, and applications on the Windows platform.WMI objects consist of classes and instances of classes. The WMI classesmay be derived from standard classes defined in the Common InformationModel (CIM). WMI provides services such as SQL query language supportand programmable event notification.

To support CIM, WMI maintains a system management schema definition 37.In many cases, schema definition 37 is stored in the WMI repository. Theschema contains a definition of the classes, along with the propertiesand methods of these classes. The classes in a schema may be declared inone or more namespaces.

System management schema 37 includes an operating system schema orsubschema 38 that represents manageable components of a computer'soperating system. The system management schema and its operating systemsubschema conform to the CIM definition, and possibly include CIMextensions or extension schemas. The namespace containing the operatingschema 38 will be referred to herein as the operating system namespace.

In addition to the operating schema 38, the inventors have developed adatabase schema or subschema 40 for use in conjunction with or as partof the system management schema 37 of WMI (or other management systems)to represent manageable components of an SQL (Structured Query Language)server. In particular, the database schema 40 represents components ofthe “Microsoft SQL Server,” although a schema such as this can alsosupport other databases.

The database schema 40 represents managed database objects such astables, files, configuration data, and other logical components. Thedatabase schema is located in its own namespace, which will be referredto herein as the database namespace.

FIG. 6 shows portions of database schema 40. The classes shown in FIG. 6relate to files that are maintained by the operating system and by themanaged database.

Database schema 40 is defined within its own database namespace. FIG. 6shows only the pertinent classes and associations within this namespace.The database namespace also includes other classes and associations (notshown) that are not pertinent to the invention. In addition, pertinentCIM or operating system classes are represented by creating a “view,” inthe database namespace, of the appropriate operating system or CIMclasses. A view is a mechanism by which one can “mirror” a class and itsinstances from another namespace. Creating is views allows one to defineassociations and dependencies between CIM classes, without requiringcross-namespace association capabilities.

Database 40 schema includes classes related to the database itself.These classes are prefixed in FIG. 6 with “DB” and are part of a CIMextension. In addition, a view of certain parts of operating systemschema 38 is created within namespace 42. Of these, FIG. 6 shows thoseoperating system schema classes related to computer files. These classesare prefixed with “CIM”.

The illustrated database-related classes include (a) a file group class46 (DB_SQLFileGroup), (b) a database file class 48 (DB_DataBaseFile),and (c) a database extension class 50 (DB_Extension).

File group class 46 represents a group of files that together physicallystore the information of a database. The properties, methods, andassociations of a specific implementation this class are listed below.

Properties

-   -   string Caption        -   Access Type: Read-only        -   Description: The Caption property is a short textual            description (one-line string) of the object.        -   Maximum Length: 64    -   [key] string DatabaseName        -   Access Type: Read-only        -   Description: The DatabaseName property indicates the name of            the database that the object is a part of.        -   Maximum Length: 128    -   boolean Default        -   Access Type: Read/Write        -   Description: The Default property indicates the filegroup            used when no filegroup is specified as part of table or            index creation. If TRUE, the referenced filegroup is used to            implement table or index data storage when a table or index            is created and no filegroup is specified. If FALSE, the            referenced filegroup is not used as the default in table and            index creation. The filegroup may be specified by name to            direct creation.    -   string Description        -   Access Type: Read-only        -   Description: The Description property provides a textual            description of the object.    -   datetime InstallDate        -   Access Type: Read-only        -   Description: The InstallDate property is datetime value            indicating when the object was installed. A lack of a value            does not indicate that the object is not installed.    -   [key] string Name        -   Access Type: Read-only        -   Description: The Name property defines the label by which            the object is known. When subclassed, the Name property can            be overridden to be a Key property.    -   boolean ReadOnly        -   Access Type: Read/Write        -   Description: The ReadOnly property controls the ability to            update a Microsoft® SQL Server™ database or database            filegroup. If TRUE, data in the database or database            filegroup cannot be changed. If FALSE, updates are allowed            to data in the database or database filegroup.    -   sint32 Size        -   Access Type: Read-only        -   Description: The Size property exposes the total size, in            megabytes, of the filegroup.    -   [key] string SQLServerName        -   Access Type: Read-only        -   Description: The SQLServerName property indicates the name            of the SQL Server™ installation that the object is a part            of.        -   Maximum Length: 128    -   string Status        -   Access Type: Read-only        -   Description: The Status property is a string indicating the            current status of the object. Various operational and            non-operational statuses can be defined. Operational            statuses are “OK”, “Degraded” and “Pred Fail”. “Pred Fail”            indicates that an element may be functioning properly but            predicting a failure in the near future. An example is a            SMART-enabled hard drive. Non-operational statuses can also            be specified. These are “Error”, “Starting”, “Stopping” and            “Service”. The latter, “Service”, could apply during mirror            re-silvering of a disk, reload of a user permissions list,            or other administrative work. Not all such work is on-line,            yet the managed element is neither “OK” nor in one of the            other states.        -   Values are: “OK”, “Error”, “Degraded”, “Unknown”, “Pred            Fail”, “Starting”, “Stopping”, “Service”        -   Maximum Length: 10    -   uint32 Type        -   Description: This property indicates the type of the file            group. The file group can be of three types. It is either a            user defined file group, a primary file group, or a            filegroup defined on files maintained on read-only media.            When a database is created, it is created on exactly one            filegroup named PRIMARY. This is the primary file group.            After database creation, filegroups can be added to the            database. These are the user defined file groups.

Value Description  0 User Defined  8 On Read-Only Media 16 Primary

Methods

Method Name Description CheckFilegroup The CheckFilegroup method scansand tests the integrity of database pages maintained in operating systemfiles implementing the referenced filegroup. CheckFilegroupDataOnly TheCheckFilegroupDataOnly method scans and tests the integrity of databasepages that are used to maintain table data in the operating system filesimplementing the referenced filegroup. EnumStoredObjects TheEnumStoredObjects method enumerates the names of the indexes, tables andstatistical mechanisms stored in the filegroup.

Associations

-   -   DB_FileGroup is associated to DB_Database as the Antecedent        property of the DB_DatabaseFileGroup association.    -   DB_FileGroup is associated to DB_Table as the Antecedent        property of the DB_TableFileGroup association.    -   DB_FileGroup is associated to DB_Table as the Antecedent        property of the association.    -   DB_FileGroup is associated to DB_Index as the Antecedent        property of the DB_IndexFileGroup association.    -   DB_FileGroup is associated to DB_CandidateKey as the Antecedent        property of the association.    -   DB_FileGroup is associated to DB_DatabaseFile as the        GroupComponent property of the association.

Note: some of the associations are to classes that are not shown in FIG.6.

Database file class 48 is an extension to the CIM_DataFile class. Itcontains properties that are relevant to an operating system file thatis also a file storing database data. These database files belong to therespective file groups of file group class 46. The properties, methods,and associations of a specific implementation this class, referred to asthe “DB_DatabaseFile” class, are listed below.

Properties

-   -   [key] string DatabaseName        -   Access Type: Read-only        -   Description: The DatabaseName property indicates the name of            the database that the object is a part of.        -   Maximum Length: 128    -   [key] string FileGroupName        -   Access Type: Read-only        -   Description: The FileGroupName property indicates the name            of the database file group that the database file is a part            of.        -   Maximum Length: 128    -   sint32 FileGrowth        -   Access Type: Read/Write        -   Description: The FileGrowth property indicates the growth            increment of the operating system file used to store table,            index, or log data. When FileGrowthType is Megabytes, the            FileGrowth value represents the number of megabytes of disk            space to allocate for incremental file growth. When            FileGrowthType is Percent, the value represents a percentage            and must be in the range from 1 through 100.    -   real32 FileGrowthInKB        -   Access Type: Read-only        -   Description: The FileGrowthInKB property reports the number            of kilobytes of disk space allocated when an incremental            increase occurs on an operating system file.    -   uint32 FileGrowthType        -   Access Type: Read/Write        -   Description: The FileGrowthType property indicates the            method of incremental allocation applied when an operating            system file is extended.

Value Description  0 Megabyte  1 Percent 99 Invalid

-   -   sint32 MaximumSize        -   Access Type: Read/Write        -   Description: The MaximumSize property indicates an upper            limit for the size of an operating system file containing            table and index data, or maintaining a database transaction            log.    -   [key] string Name        -   Access Type: Read-only        -   Description: The Name property defines the label by which            the object is known.        -   Maximum Length: 128    -   string PhysicalName        -   Access Type: Read-only        -   Description: The PhysicalName property specifies the path            and file name of the operating system file storing            Microsoft® SQL Server™ database or transaction log data.    -   boolean PrimaryFile        -   Access Type: Read-only        -   Description: The PrimaryFile property indicates whether the            database file is the one that maintains the            database-specific system tables. A SQL Server™ database can            have at most one primary file.    -   sint32 SpaceAvailableInMB        -   Access Type: Read-only        -   Description: The SpaceAvailableInMB property returns the            amount of disk resource, in megabytes, allocated and unused            in operating system files implementing Microsoft® SQL            Server™ database and database transaction log storage.        -   Units: Megabytes    -   [key] string SQLServerName        -   Access Type: Read-only        -   Description: The SQLServerName property indicates the name            of the SQL Server™ installation that the object is a part            of.        -   Maximum Length: 128

Methods

Method Name Description Shrink The Shrink method attempts to reduce thesize of the database file.

Database extension class 50 is an abstract class that representsextensions made via associations to a managed system element. Extensionsare made via associations when it is not possible or desirable to extenda class by subclassing.

Database extension class 50 is associated to CIM_ManagedSystemElement.

The database file class 48 is a subclass of the database extension class50.

The operating system classes include (a) a managed system element class54, (b) a logical element class 56, which is a subclass of the managedsystem element class 54, (c) a logical file class 58, which is asubclass of logical element class 56, and (d) a data file class 60,which is a subclass of logical file subclass 58. These are standardclasses, defined by CIM.

Managed system element class 54 represents management-specific systemelements. Logical element 56 represents the logical aspects of systemelements.

Logical element class 56 is the base class for all the classes thatrepresent the logical aspects of things such as profiles, processes anddevices.

Logical file class 58 represents a named collection of data (this can beexecutable code) located in a file system on a storage extent.Typically, such collections are files.

Files can be one of three types in the CIM model: directory, devicefile, or data file. Of these, only the data file class 60 is shown inFIG. 6.

The database file group class 46 represents a logical element, and istherefore subclassed from the CIM logical element class 56. Even thoughthese two classes are in different namespaces, it is possible to defineassociations between the two classes because a view of the relevant CIMclasses has been created within the database namespace.

Database extension class 50 represents an extension of a managed systemelement, while the CIM managed system element class 54 represents allmanaged system elements.

The inventors have recognized that the database file class 48 istechnically a subclass of CIM data file class 60—a database file is onetype of operating system or CIM data file. However, it is not advisableto define a dependency such as this because the CIM data file class 60has already been subclassed in another namespace, using a differentclassification criteria—defining a dependency such as this betweennamespaces could create so-called “instance overlaps”, in whichidentically keyed instances of different subclasses could not bedistinguished from each other.

In addressing this problem, the inventors have defined an association 62between the database file class 48 and the CIM data file class 60. Thisallows one to query an instantiated database schema to relate a databasefile to an operating system file. In order to obtain the operatingsystem file information for the database file, the following query canbe used in conjunction with WMI:

-   -   Associators Of        -   {DB_DatabaseFile.Name=Northwind”,        -   DB_FileGroupName=“primary”,        -   DB_DatabaseName=“Northwind”,        -   DB_ServerName=“MyServer”}        -   where ResultClass=CIM_DataFile

With an association such as this, WMI is able to addresses the potentialdifficulties of using disparate mechanisms to manage differentapplications. For example, in order to manage an enterprise, one needsto manage not only the database server, but also the operating systemrunning on the machines, the e-mail servers, the web servers, etc. Inorder to deploy a reliable system that includes all such components, oneneeds the ability to manage and troubleshoot across these applications.Having a common interface for each of these components and allowingsystem administrators (as well as third party management applications)to seamlessly navigate from one subsystem to another, is a huge leap inmaking an enterprise more manageable.

Consider the case when a storage disk is about to fail in an e-commercecompany. With a schema such as the one discussed above, theadministrator can immediately determine the filegroups/databases thatare hosted on the disk (this diagnostic process is made much easier bythe WMI schema—it would be much harder without the associations inplace). Smart management applications can in fact leverage the WMIschema and present the system administrator with precise informationabout the impact of one portion of the system.

Although details of specific implementations and embodiments aredescribed above, such details are intended to satisfy statutorydisclosure obligations rather than to limit the scope of the followingclaims. Thus, the invention as defined by the claims is not limited tothe specific features described above. Rather, the invention is claimedin any of its forms or modifications that fall within the proper scopeof the appended claims.

1. One or more computer-readable media comprising a data structurestored on the computer-readable memory in accordance with a plurality ofschemas, the schemas comprising: an operating system schema that modelselements of a computer and its operating system; a database schema thatmodels elements of a database; a file class within the operating systemschema; a file class within the database schema; and an associationbetween the file class of the operating system schema and the file classof the database schema.
 2. One or more computer-readable media asrecited in claim 1, wherein the operating system schema and databaseschema are in different namespaces.
 3. One or more computer-readablemedia as recited in claim 1, wherein the operating system schema isrepresented as a view within a database schema namespace.
 4. One or morecomputer-readable media as recited in claim 1, wherein the operatingsystem schema is a CIM schema.
 5. One or more computer-readable media asrecited in claim 1, wherein the database schema is a CIM extension. 6.One or more computer-readable media as recited in claim 1, wherein thedata files represented by the database schema's file class are alsorepresented by the operating system schema's file class.
 7. One or morecomputer-readable media as recited in claim 1, further comprising: adatabase file group class; an association between the database fileclass and the database file group class.
 8. One or morecomputer-readable media comprising a data structure stored on thecomputer-readable memory in accordance with one or more schemas for usein conjunction with an operating system schema, the operating systemschema defining a file class that represents operating system files, theone or more schemas comprising: a database schema that models elementsof a database; the database schema defining a file class that representsdatabase files; wherein the database files represented by the databaseschema's file class are also represented by a file class of theoperating system schema; and an association between the operating systemschema file class and the database schema file class, said associationallowing queries that navigate between the operating system schema andthe database schema.
 9. One or more computer-readable media as recitedin claim 8, wherein the operating system schema and database schema arein different namespaces.
 10. One or more computer-readable media asrecited in claim 8, wherein the operating system schema is representedas a view within a database schema namespace.
 11. One or morecomputer-readable media as recited in claim 8, wherein the operatingsystem schema is a CIM schema.
 12. One or more computer-readable mediaas recited in claim 8, wherein the database schema is a CIM extension.13. One or more computer-readable media as recited in claim 8, whereinthe operating system schema is a CIM schema and the database schema is aCIM extension.
 14. One or more computer-readable media as recited inclaim 8, wherein the data files represented by the database schema'sfile class are also represented by the operating system schema's fileclass.
 15. One or more computer-readable media as recited in claim 8,further comprising, within the database schema: a file group class; anassociation between the database file class and the file group class.16. A computer programmed to implement a schema, the schema modeling atleast portions of the computer, the schema comprising: an operatingsystem schema that models elements of the computer and its operatingsystem; a database schema that models elements of a database; whereinthe operating schema defines a file class that represents operatingsystem files; wherein the database schema defines a file class thatrepresents database files; wherein the database files represented by thedatabase schema file class are also represented by the operating systemschema file class; and an association between the operating systemschema file class and the database schema file class, said associationallowing queries that navigate between the operating system schema andthe database schema.
 17. A computer as recited in claim 16, wherein theoperating system schema and database schema are in different namespaces.18. A computer as recited in claim 16, wherein the operating systemschema is represented as a view within a database schema namespace. 19.A computer as recited in claim 16, wherein the operating system schemais a CIM schema.
 20. A computer as recited in claim 16, wherein thedatabase schema is a CIM extension.
 21. A computer as recited in claim16, wherein the operating system schema is a CIM schema and the databaseschema is a CIM extension.
 22. A computer as recited in claim 16,further comprising, within the database schema: a file group class; anassociation between the database file class an the file group class. 23.A method of computer and database management, comprising: modeling anoperating system with an operating system schema in a first namespace;modeling a database with a database schema in a second namespace;representing operating system files by an operating system file class inthe operating system schema; representing database files by a databasefile class in the database schema; creating a view of the operatingsystem schema within the second namespace; and creating an associationin the second namespace between the operating system file class and thedatabase file class, said association allowing queries that navigatebetween the operating system file class and the database file class. 24.A method as recited in claim 23, wherein the operating system schema isa CIM schema.
 25. A method as recited in claim 23, wherein the databaseschema is a CIM extension.
 26. A method as recited in claim 23, whereinthe operating system schema is a CIM schema and the database schema is aCIM extension.
 27. A method as recited in claim 23, wherein the datafiles represented by the database schema's file class are alsorepresented by the operating system schema's file class.
 28. A method asrecited in claim 23, the operating system schema having a file groupclass, further comprising creating an association between the databasefile class and the operating system file group class.